1. Field of the Invention
This invention relates generally to accessing data, and, more particularly, to accessing variable sized blocks of data.
2. Description of the Related Art
Modern day electronic products, such as computers and telecommunications devices, are generally faster and more efficient than their predecessors. One important factor that has contributed to the improved performance of today""s electronic products is the efficiency at which these products access and process information. For example, microprocessors routinely transfer most often accessed information from external memories to on-chip memory caches to improve the overall performance of computers.
The ability to quickly access information can be a desirable feature in many applications, ranging from data processing systems to real-time applications capable of supporting data communications. This is particularly true for real-time communication applications that require a CPU to support complex communication protocols while simultaneously managing the transfer of large amounts of data, such as that required for the Internet. In data processing systems, as mentioned above, the overall system performance may be improved with a microprocessor""s ability to more quickly and efficiently retrieve data or instructions for processing. The overall performance of real-time applications capable of supporting data communications can likewise be improved by utilizing a method of efficiently accessing information. One such example of a real-time communications applications where an efficient method of accessing information may be useful is a Wireless Local Loop (WLL) network. Those skilled in the art will appreciate that the method of quickly and efficiently accessing data is discussed with respect to WLL technology for illustrative purposes only, although the discussion may be equally pertinent with respect to other technologies as well.
Wireless Local Loop is quickly emerging as the technology that promises to deliver telephone service in geographical areas where using conventional copper telephone lines is cost prohibitive, or in the case where the line exists, radio access technologies, such as WLL, provide other companies an opportunity to provide competitive services. Installing the last quarter of a mile of the telephone wire to a subscriber station is usually one of the most costly portions of the traditional telephone network, primarily because of the expenses associated with labor and maintenance. The telephone companies, which are usually responsible for maintaining the telephone wire, are frequently plagued with the daunting task of repairing the damage to the telephone lines caused by inclement weather, falling trees, digging, and by the recurring problem of copper wire theft. Accordingly, to circumvent the problems that are typically associated with the xe2x80x9ctraditionalxe2x80x9d telephone network, system designers turned to WLL technology, which is proving to be a promising and viable alternative.
FIG. 1 illustrates a block diagram of a WLL network 100. The WLL network 100 includes a Wireless Subscriber Unit (WSU) 110 at the subscriber station 115 that communicates with a remote Basestation Transceiver System (BTS) 120. The data flow from the WSU 110 to the BTS 120 is referred to as an uplink connection, and the data flow from the BTS 120 to the WSU 110 is referred to as a downlink connection. The BTS 120 links the WSU 110 to a central office 130, thus allowing a user at the subscriber station 115 to communicate with other subscriber stations (not shown) through the central office 130. A connection 132 between the BTS 120 and the central office 130 may be made via a wire-line, fiber or microwave link, depending on the bandwidth, distance, and the terrain.
The heart of the WLL network 100 is the xe2x80x9cwirelessxe2x80x9d interface between the BTS 120 and the WSU 110, where the need for the copper loop is eliminated. The WSU 110, located in the home or office, provides a radio frequency (RF) interface to an existing phone 135 or modem 140, usually through an RJ-11 type plug (not shown). The connection between the subscriber station 115 and the central office 130 is typically as reliable and clear as the copper wire version.
The counterpart to the WSU 110 is the BTS 120, which is generally located in the field. As is common in most wireless systems, the BTS 120 serves as a control station for the WSU 110 by providing, over a designated pilot channel, synchronization and control information necessary to initiate and maintain two-way communication. In communication systems employing time division multiple access (TDMA), a process well-known in the art, the WSU 110 selects the channel frequency and the specific time slot based upon the availability and quality of the channels in the coverage area.
Most wireless communication systems, including the WLL network 100, operate in accordance with the industry defined standards. For example, two popular standards for the WLL network 100 are Personal Handyphone System (PHS) and Digital Enhanced Cordless Telephone (DECT). The PHS and DECT standards, as well as other WLL standards, define the format for transmitting and receiving data, error checking algorithm, retransmission scheme, and other such parameters that are relevant to wireless communications systems.
The DECT standard for the WLL network 100, for example, defines a 10-millisecond frame that comprises twenty-four slots, generally twelve are reserved for transmitting and twelve for receiving. DECT supports voice, analog data (modem), and packet data communications. Voice and analog data communications are full duplex whereas packet data communications are simplex in nature. Packet data communications can take advantage of directing all slots in one direction, uplink or downlink, with the exception of one slot for the reverse acknowledgement channel. Depending upon the bandwidth allocated by the system, an uplink or downlink channel can utilize between one and twenty-three slots for transferring packet data. When no data is waiting to be sent, the bandwidth is deallocated and assigned to other users. Thus, in a downlink connection, the BTS 120 of the WLL network 100 can transmit data on up to twenty-three time slots that are allocated for transmitting data per each frame to the WSU 110. Assuming all of the data is successfully transmitted over the twenty-three time slots, then new data may be transmitted on the twenty-three transmit time slots of the next frame. On the other hand, if not all of the data is successfully transmitted to the BTS 120 because of transmission errors, then that data, along with new data, is retransmitted over the twenty-three transmit time slots in accordance with the DECT retransmission scheme.
Wireless communications systems implement standard procedures to improve the BER (Bit Error Rate) across the radio channel. These procedures include error detection and correction algorithms and error detection and retransmission algorithms. DECT provides an error detection and retransmission scheme to support packet data in WLL applications. The retransmission scheme of a DECT WLL network, for example, requires an acknowledgment to be generated by the peer station on a slot by slot basis. The BTS 120 or the WSU 110 may be the peer station, depending on whether the connection is an uplink or downlink connection. That is, in an uplink connection, the BTS 120 is the peer station, and in a downlink connection, the WSU 110 is the peer station. A xe2x80x9cgoodxe2x80x9d acknowledgement from the peer device indicates a good transmission. On the other hand, a xe2x80x9cbadxe2x80x9d acknowledgement indicates a bad transmission, and thus requires retransmission of data that was not received correctly by the peer station.
Generally, in the WSU 110 or the BTS 120 of the WLL network 100, data is retrieved from an external source (not shown), such as a processor or memory, before the data is transferred to the peer station. Because the data is transmitted and received at a fast rate between the BTS 120 and the WSU 110, it is desirable to quickly access the data for transmission from the external source (not shown). However, because the data carried by some slots may not successfully reach the BTS 120 during the first attempt, it may be necessary to retransmit unacknowledged slots until the data successfully reaches the BTS 120. Accordingly, some retransmission schemes may require different sized blocks of data to be retrieved from the external source for each frame transmission. Thus, the amount of data that is retrieved for transmission of the next frame may depend on the successful transmission rate of the previous frame since new data is generally retrieved for only those slots for which the transmission successfully completes.
The conventional method of retrieving data entails having a microprocessor or a microcontroller (not shown) program or instruct a direct memory access controller (not shown) to fetch the desired data. To retrieve different sized blocks of data for each transmission, the microprocessor/microcontroller, using the conventional method, must reprogram the direct memory access controller for each memory access. Reprogramming the direct memory access controller to fetch different size blocks of data for each memory access, however, is a time-consuming process that can adversely affect the performance of the communications system.
The present invention is directed to overcoming, or at least reducing the effects of, one or more of the problems set forth above.
In one aspect of the present invention, a method is provided for accessing data. The method includes defining a first portion of a memory for receiving data and providing a memory request to transfer data from a source to the first portion of the memory defined to receive the data. The method further includes transferring a portion of data from the source to the first portion of the memory, wherein the size of the portion of the data substantially corresponds to the size of the first portion of the memory.
In another aspect of the present invention, an apparatus is provided for accessing data. The apparatus includes a source for providing data, and a memory having a first portion configured to receive the data from the source. The apparatus comprises an access controller that is capable of transferring data from the source to the first portion of the memory in response to a memory request. The apparatus includes a control logic capable of determining the size of the first portion of the memory and capable of providing the memory access request to the access controller to transfer a portion of the data from the source corresponding to the size of the first portion of the memory.